Systems and methods for establishing or maintaining a personalized trusted social network

ABSTRACT

Automated systems and methods are provided for establishing or maintaining a personalized trusted social network for a community of users, with little or no input from any given user. To establish the personalized trusted social network, one or more trusted sources are identified for a given user. The identified trusted sources are added to a user profile for the given user. Also, identified are any annotations, bookmarks, or the like that the identified trusted sources have associated with any shared content. These annotations provide access to microcontent items that the identified trusted sources have integrated with the shared content to thereby enhance or enrich its context. One or more profiles are constructed or updated to track the associations between the identified trusted sources and their annotations. The profile information can be applied to enhance and personalize search and browsing experiences for the given user.

CLAIM OF PRIORITY

This application is a continuation of and claims priority to U.S. Ser.No. 11/580,320, filed on Oct. 13, 2006, entitled “Systems and Methodsfor Establishing or Maintaining A Personalized Trusted Social Network”,which is incorporated herein by reference in its entirety.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is related to the following patents and pendingapplications, each of which is hereby incorporated herein by referencein its entirety:

U.S. patent application Ser. No. 11/082,202, entitled “SEARCH SYSTEM ANDMETHODS WITH INTEGRATION OF USER ANNOTATIONS FROM A TRUST NETWORK,”filed Mar. 15, 2005;

U.S. patent application Ser. No. 11/082,212, entitled “SEARCH SYSTEMSAND METHODS WITH INTEGRATION OF AGGREGATE USER ANNOTATIONS,” filed Mar.15, 2005;

U.S. patent application Ser. No. 11/081,860, entitled “SEARCH SYSTEMSAND METHODS WITH INTEGRATION OF USER ANNOTATIONS,” filed Mar. 15, 2005;

U.S. patent application Ser. No. 11/081,871, entitled “SYSTEMS ANDMETHODS FOR COLLECTING USER ANNOTATIONS,” filed Mar. 15, 2005; and

U.S. Provisional Application No. 60/695,239, entitled “SEARCH ENGINEWITH AUGMENTED RELEVANCE RANKING BY COMMUNITY PARTICIPATION,” filed Jun.18, 2005.

COPYRIGHT NOTICE

A portion of the disclosure of this patent document contains material,which is subject to copyright protection. The copyright owner has noobjection to the facsimile reproduction by anyone of the patent documentor the patent disclosure, as it appears in the Patent and TrademarkOffice patent files or records, but otherwise reserves all copyrightrights whatsoever.

FIELD OF THE INVENTION

The present invention is directed to selecting and navigating sharedcontent from a corpus of documents or other content. More specifically,the present invention is directed to systems and methods for developinga social network for discovering and recovering shared content.

BACKGROUND OF THE INVENTION

The MY WEB 2.0 web service, available from Yahoo! Inc., is an example ofa web-scale social search engine that enables users to find, use, shareand expand human knowledge. It allows users to save and tag Web objects,allowing for browsing and searching of objects, as well as sharing Webobjects within a personalized community or to the public. Further, theMY WEB 2.0 Web service provides scoped searches within a user's trustedsocial network (e.g., friends and friends of friends). As a consequence,the search results are personalized and spam-filtered by trustednetworks.

To experience the full benefits of personalized search results, a usertypically must subscribe to the web service and create a profile thatlists the names of the user's trusted social network. The user mustinclude an email address or another personal identifier, so that eachmember of the social network can be accurately identified. Next, adatabase must be populated with Web objects, or links to Web objects,that the user and the user's network of friends have saved and tagged.This implies that the members of the user's social network must also besubscribers to the web service. After completing this process, thedatabases for the web service would be ready to enable the user to enjoythe benefits of personalized searches.

However, to complete the above process, the user must expend aconsiderable amount of time to collect the requisite data about themembers of the user's social network. Considerable effort must also beexpended to populate the databases with saved and tagged objects. Assuch, a user, including the members of the user's social network, can beinitially discouraged from seeking the advantages of personalized webservices.

Therefore, what is need is a system and method that overcome theabove-noted shortcomings and provide an efficient and effective meansfor establishing a social network for sharing, discovery and recovery.

SUMMARY OF THE INVENTION

Automated systems and methods are described herein for establishing ormaintaining a personalized trusted social network for a community ofusers, but with little or no input from any given user. An electronicsocial network (such as, the MY WEB 2.0 social searching servicesavailable from Yahoo! Inc.) enables a plurality of users to find,utilize, share, or annotate information throughout a distributedcommunications system, such as the global Internet. The users areallowed to save and/or tag content items; browse and/or search forobjects; and share objects within the entire community or within apersonalized subset of the entire community. To restrict a socialnetwork to a personalized subset of the entire community, the user mustidentify, or otherwise invite other users, to become a member of thepersonalized trusted social network.

To initially establish a personalized trusted social network for a givenuser, one or more community users are identified that have a hardware orsoftware relationship with the given user. The identified users arethereafter added to a user profile for the given user as members of thepersonalized trusted social network for the given user. Additionally, oralternatively, the user profile for the given user can include othertrusted sources (such as, electronic commerce businesses, news sources,professional associations, or the like) to build the personalizedtrusted social network.

Also, identified are any annotations, bookmarks, or the like that theidentified trusted sources have associated with any shared contentwithin a distributed communications system. These annotations, or thelike, refer to microcontent items that the identified trusted sourceshave integrated with the shared content to thereby enhance or enrich itscontext. One or more profiles are constructed or updated to track theassociations between the identified trusted sources and theirmicrocontent.

For example, if a given user is a subscriber to an online service (suchas, a blog), an RSS feed for the online service can be parsed toidentify the owner (e.g., trusted source) of the online service as wellas any other contributors or the like, including individuals or entitiesthat have contributed to the online service by adding content items(e.g., comments) and/or attaching microcontent items (e.g., relatedarticles). The identified individuals and/or entities (e.g., the ownerand other contributors) are added as members to the user profile astrusted sources for the given user.

Alternatively, or in addition, a plurality of online services can bedetected and parsed to identify the owner and other contributors withoutregard to whether a given user is an existing subscriber. For example,the online services can include the most popular blogs as determined bynetwork traffic, or the online services can be determined by a humananalyst by any means, as desired.

If the owner of an online service cannot be detected, the online serviceitself can be identified as the trusted source. Alternatively, theonline service can be listed as a trusted source in addition to theowner. Moreover, in an embodiment, the owner of the online service isnot researched or identified. Accordingly in such embodiment, the onlineservice is identified as the trusted source.

In addition to detecting the trusted sources for an online service, theonline service is analyzed to determine if a trusted source has includedany annotations, bookmarks, hyperlinks, attachments, or the like thatprovide access to microcontent. Microcontent includes supporting contentthat a trusted source links or associates with a content item (e.g.,blogged comment) provided in the online service. For example, a trustedsource can have included hyperlinks from blogrolls, URLs a blogger hasblogged, or the like. If annotations are discovered, this metadata isalso collected to track its association with the corresponding trustedsource. As such, a critical mass of site metadata can be created toidentify and store any site that a blogger, for example, has publiclymarked.

As a result, a user profile for a given user can be constructed orupdated to include a listing of trusted sources that represent membersof the personalized trusted social network for the given user. The userprofile is integrated with another profile that tracks the associationsbetween the trusted sources and any annotations (also, as extracted fromthe online services) that the trusted sources have associated withcontent items. The profile information can be applied in various ways toenhance and personalize search and browsing experiences for the givenuser. For example, when a user searches a corpus of content, any hitscorresponding to a microcontent item that has been annotated by atrusted source from the user's profile can be highlighted with a linkallowing the user to access, e.g., the blog that enabled the trustedsource to be associated with the user, as well as to the actual blogentry by the trusted source. Therefore, the user can view the blog entryand consider the context in which the trusted source is using themicrocontent item.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention is illustrated in the figures of the accompanyingdrawings, which are meant to be exemplary and not limiting, in whichlike references are intended to refer to like or corresponding parts,and in which:

FIG. 1 illustrates a social network development and management systemaccording to an embodiment of the present invention;

FIG. 2 illustrates an operational flow for constructing a listing oftrusted sources for a given user according to an embodiment of thepresent invention;

FIG. 3 illustrates an operational flow for monitoring user associationsto update a listing of trusted sources for a given user according to anembodiment of the present invention;

FIG. 4 illustrates an operational flow for receiving search resultsannotated with content from a listing of trusted sources according to anembodiment of the present invention;

FIG. 5 illustrates a graphical user interface for presenting contentfrom a blog to a user according to an embodiment of the presentinvention;

FIG. 6 illustrates a partial frame of microcontent retrievable fromactivating a microcontent link according to an embodiment of the presentinvention;

FIG. 7 illustrates annotated search results according to an embodimentof the present invention;

FIG. 8 illustrates navigation to a blog from a page of annotated searchresults according to an embodiment of the present invention; and

FIG. 9 illustrates navigation to microcontent listed in annotated searchresults from a page of annotated search results according to anembodiment of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

Automated systems and methods are described herein for establishing apersonalized trusted social network for a community of users, but withlittle or no input from any given user. A social network can berepresented as a graph of interrelated nodes, wherein each node in thegraph represents a user and each edge represents a relationship withanother user, such as a friend, colleague, family member, or the like(referred to herein as buddies) and/or with other entities, such asbusinesses, nonprofit organizations, government agencies, activistgroups, educational institutions, news sources, file-sharingcommunities, professional associations, or the like. The degree ofseparation between a pair of nodes is the minimum number of hops fromone node to another. For example, a degree zero node is a given nodeitself, degree one nodes are those nodes that are directly connected tothe given node, degree two nodes are those nodes that have one nodebetween themselves and the given node, degree three nodes are thosenodes that have two nodes between themselves and the given node, and soforth.

It should be understood that the above listing of “buddies” and other“entities” are provided by way of example and are not intended to beexclusive. As used herein, the expressions buddies and entities arecollectively referred to herein as trusted sources, as these sources areconsidered to part of the trusted social network of a given user.

An electronic social network (such as, the MY WEB 2.0 social searchingservices available from Yahoo! Inc.) enables a plurality of users tofind, utilize, share, or annotate information throughout a distributedcommunications system, such as the global Internet. The users areallowed to save or tag items of content; browse and/or search for thecontent items; and share the content items within the entire communityor within a personalized subset of the entire community. To restrict asocial network for a specific user to a personalized subset of theentire community, the user must identify, or otherwise invite, otherusers so that they can become a member (e.g., buddies) of thepersonalized social network. Similarly, the user must specify anassociation with a particular entity (e.g., university alumniassociation, professional organization, online news service, or thelike).

A user within an electronic social network can annotate the contentitems found within a corpus of media and/or multimedia (e.g., the WorldWide Web). As used herein, the term “content” comprises the informationcontained within an object, such as a Web object, Web page, Web site,document, interactive data structures, or the like. A collection of suchinformation is referred herein as an “item of content” or a “contentitem.” The term “annotation,” as used herein, refers to any descriptiveand/or evaluative metadata related to a content item that is collectedfrom a user and thereafter stored in association with the user or thecontent item. Annotations can include various fields of metadata, suchas a rating (which can be favorable or unfavorable) of a document, alist of keywords identifying a topic (or topics) of a document, afree-text description of a document, and/or other fields. An annotationcan be collected from a user of the corpus and stored in associationwith an identifier of the user who created the annotation and anidentifier of the document (or a content item included within thedocument or other object type) to which it relates.

Annotations have many applications. For instance, one or more usersviewing a page of search results are able to annotate one or more of thecontent items (e.g., the listed items within the search results) andsave the annotations. One or more users can also create and save anannotation for any object (e.g., page or site visited). Storedannotations can be used in various ways to enhance and personalizesearch and browsing operations. For example, when a user searches thecorpus, any listed item from the search results (herein referred to as“hits”) corresponding to pages that the user has annotated (referred toherein as “annotated hits” or “annotated search results”) can behighlighted, with a link being provided to allow the user to view theannotation. If the annotation includes judgment data such as a numericalrating, the annotated hit can be highlighted to indicate whether thejudgment was favorable or unfavorable. The ratings can also be used forranking search results in response to user queries, with favorablejudgments tending to increase the ranking of a given page or site andunfavorable judgments tending to decrease the ranking. If the annotationincludes user-supplied free text and/or descriptive keywords or labels,the user can have the option to search the annotations in addition to orinstead of page content. Any time the user visits a page that has beenannotated, a control can be provided to allow the user to view and/oredit the annotation.

FIG. 1 illustrates a social network development and management system100 in accordance with an embodiment of the present invention. System100 includes a plurality of client devices 102 a-102 e, at least onecontent server 106 a-106 b, at least one search provider 114, and acommunications network 108. One or more proxy servers 112 can also beprovided. However, this component is optional. It should be understoodthat system 100, as described herein, is an exemplary system that isuseful for implementing various aspects of the present invention.Various modifications and variations can be made without departing fromthe scope of the present invention. For example, the quantity of systemcomponents illustrated in FIG. 1 can be increased or decreased asdesired by the system architect. Moreover, the present invention can beimplemented in other communication systems that allow a user to searchand annotate content, or annotate any type of content, that is madeavailable for sharing, discovery, and/or recovery by the same user or acommunity of users having access to the content.

Referring to FIG. 1, a user interacts with a client device 102 a-102 e.One or more of the client devices 102 a-102 e can be a personal computerthat includes a processor, transient memory (e.g., RAM), persistentmemory (e.g., hard drive), an input device (e.g., mouse, keyboard, touchscreen, stylus, voice command interface, or the like), and circuitry toprovide communication paths between the components. One or more of theclient devices 102 a-102 e can also be a desktop computer, notebookcomputer, computer workstation, personal digital assistant (PDA),cellular device, thin client, or the like.

Each client device 102 a-102 e comprises network interface hardware andsoftware that provides the client device 102 a-102 e with the ability totransmit and receive data over a network 108. The network 108 providescommunication channels between the client devices 102 a-102 e, contentservers 106 a-06 b, search provider 114, and other information sources.Network 108 can be a wired and/or wireless local area network (LAN),virtual LAN (VLAN), wide area network (WAN), and/or metropolitan areanetwork (MAN), such as an organization's intranet, a local internet, theglobal-based Internet (including the World Wide Web (WWW)), an extranet,a virtual private network (VPN), licensed wireless telecommunicationsspectrum for digital cell (including CDMA, TDMA, GSM, EDGE, GPRS,CDMA2000, WCDMA FDD and/or TDD or TD-SCDMA technologies), or the like.Network 108 can support wired, wireless, or combinations of bothtransmission media, including satellite, terrestrial (e.g., fiber optic,copper, UTP, STP, coaxial, hybrid fiber-coaxial (HFC), or the like),radio, free-space optics, microwave, and/or any other form or method oftransmission.

A memory device on each client device 102 a-102 e, which can be apersistent or transient storage device, provides storage for one or moreclient applications 104 a-104 e. The client devices 102 a-102 e can runan operating system that provides both a high-level user interface aswell as a low-level input/output control and memory management for theclient devices 102 a-102 e. Exemplary operating systems include theMICROSOFT WINDOWS XP(™) operating system deployed on some personalcomputers, and the SYMBIAN OS™ operating system deployed on someportable cellular devices. Regardless of the operating system, theclient devices 102 a-102 e maintain an application program 104 a-104 ethat provides an interface for browsing content made available by one ormore content servers 106 a-106 b. Other examples of application programs104 a-104 e that can be executed on a client device 102 a-102 e include,but are not limited to, email applications, instant messagingapplications, document management applications, or the like.

The one or more content servers 106 a-106 b host files 105 a-105 b,which are accessible to clients 102 a-102 e over the network 108. A file105 a-105 b contains one or more items of content formatted as, e.g.,text, graphics, audio, video, etc. As used herein, the term “file”refers to an object that includes one or more items of content and thatcan be retrieved from a unique location or address (e.g., a uniformresource locator (URL)). A client 102 a-102 e uses a client application104 a-104 e, such as a web browser, to issue a request for a file 105a-105 b to a content server 106 a-106 b by providing an address for thefile 105 a-105 b. The client application 104 a-104 e receives the file105 a-105 b that is responsive to the request. The client application104 a-104 e renders the content that is contained in the file. Forexample, where a browser (e.g., client application 104 a) running on aclient device (e.g., client device 102 a) requests a web page (e.g.,file 105 a) from a web server (e.g., content server 106 a), the browserreceives the requested page and renders the content comprising the page,which can include links to download and render additional files fromother web sites. Such additional files that are linked to the web pageare referred to herein as “microcontent.”

The search provider 114 provides a mechanism that allows client devices102 a-102 e to search for files 105 a-105 b of interest. The searchprovider 114 comprises an crawler component 116, an indexer component118, an index data store 120, a search component 122, a rankingcomponent 130, a cache 132, a profile data store 126 to providepersistent storage for one or more user profiles 128, a logon component134, a profile builder 136, and an application program interface (“API”)124 that the other search provider components 116, 118, 122, 130, 132,134, and 136 can use to execute functions for storage, retrieval andmanipulation of data in the index data store 120 and profile data store126. API 124 enables system architects to collect information to assistin the indexing of files, as well as provide techniques for using theinformation for searching and ranking of result sets that are responsiveto user queries. It should be noted that the search provider 114 and itsconstituent components can be deployed across the network 108 in adistributed manner whereby key components are duplicated andstrategically placed throughout the network 108 for increasedperformance, e.g., close to the edges of the network.

The search provider 114 comprises a crawler component 116 that isoperative to open a communications channel with a content server 106a-106 b over the network 108. The crawler 116 retrieves a file 105 a-105b from the content server 106 a-106 b and can store a copy of the file105 a-105 b in a cache 132 at the search provider 114. The cache 132 isa persistent storage device. The crawler component 116 can also followlinks to other files (e.g., microcontent) in the file 105 a-105 b,navigating to the linked files (e.g., microcontent) and saving a copy ofthe linked files in the cache 132, and so forth. Preferably, the crawlercomponent 116 retrieves files from a plurality of content servers 106 aand 106 b in a substantially simultaneous manner so as to collect files105 a and 105 b from the greatest number of content servers 106 a and106 b in the least amount of time.

In addition to using the crawler component 116 to collect files 105a-105 b from over the network 108, the search provider 114 can alsocollect information on individual users by monitoring user interactionwith client applications 104 a-104 e, content servers 106 a-106 b, thesearch provider 114, and other information sources made available overthe network 108. The search provider 114 can collect informationaccording to a number of techniques. According to a first technique, aclient application 104 c interfaces with a plug-in component 128, e.g.,a browser toolbar component that monitors information in the stream ofdata traffic transmitted and received by the client application 104 c.The plug-in 128 can aggregate this information locally on a transient orpersistent storage device, which the plug-in 128 periodically transmitsto the search provider 114 over the network 108. An example of such aplug-in is the YAHOO! Toolbar browser plug-in for the MICROSOFT INTERNETEXPLORER™ browser.

Alternatively, or in conjunction with a plug-in 128, a clientapplication 104 d-104 e can be in communication with a proxy server 112.Data traffic from the client 102 d-102 e passes through the proxy server112 prior to receipt by the component to which the data is addressed,e.g., content server 106 a-106 b. The proxy server 112 can recordinformation from the stream of data traffic transmitted and received bythe client application 104 d-104 e. The proxy server 112 can furtheraggregate this information from a plurality of connected clients 102d-102 e and periodically transmit the information to the search provider114. If the client application 104 a-104 b employs neither a plug-in 128nor transmits and receives information through a proxy server 112, thesearch provider 114 can directly collect information from the stream ofdata that the client application transmits and receives. For example, ifthe search provider maintains a suitably large collection of files inits cache 132, the user can browse though files from the cache asopposed to browsing the file from its source location, allowing thesearch provider 114 to observe information in the data stream.

In addition to collecting information from the stream of data that theclient application 104 a-104 e transmits and receives, the searchprovider 114 can provide advanced functionality that allows a user toperform functions on files 105 a-105 b that the user browses. The searchprovider 114 comprises an API 124 that exposes functions for allowingthe user to personalize files and the content contained within files, aswell as maintain a user's navigation history, which is referred toherein as “personalization.” Personalization functions that the API 124provides include, but are not limited to, saving copies of files,tagging files, annotating files, and performing other functions, e.g.,highlighting content in a file.

The search provider 114 also comprises a login component 134 thatprovides authentication of user credentials, thereby providing access tothe personalized information. Credentials that the user provides to thelogin component 134 can comprise a username/password pair, a physicaltoken, a biometric identifier, or other identification credentials.According to an embodiment, the browser plug-in 128 provides client-sidecommunication to the API 124. When the user wishes to log into thesearch provider 114, the plug-in 128 provides the login interface andmakes the appropriate calls to the API 124 to authenticate the user.

When the search provider 114 authenticates the user credentials, thesearch provider 114 provides the user with access to the functions thatthe API 124 offers. As the user uses the client application 104 a-104 eto browse files 105 a-105 b that the content servers 106 a-106 b host,function calls can be made to the API 124 to generate personalizedinformation. According to an embodiment, the API 124 provides a functioncall that allows a user to save an annotation and associate theannotation with a file at a given address, each annotation, for example,providing the user's thoughts or comments regarding the file or thecontent contained therein. Similarly, the API 124 can provide a functioncall that allows a user to save one or more tags and associate the tagswith a file at a given address, each tag, for example, providing adescriptive keyword for describing the file or the content containedtherein. Another function that the API 124 provides allows a user tosave a personal copy of the file or select pieces of content containedtherein. Systems and methods for generating personalized information aredescribed in commonly owned patent application Ser. No. 11/081,860,entitled “SEARCH SYSTEMS AND METHODS WITH INTEGRATION OF USERANNOTATIONS,” filed Mar. 15, 2005, and commonly owned patent applicationSer. No. 11/082,202, entitled “SEARCH SYSTEM AND METHODS WITHINTEGRATION OF USER ANNOTATIONS FROM A TRUST NETWORK,” filed Mar. 15,2005, the disclosure of which are hereby incorporated by reference intheir entirety.

The search provider 114 includes a profile builder 136 that creates aprofile 128 for each user of a client application 104 a-104 e with whichthe search provider 114 is in communication, e.g., through a plug-in 128or proxy server 112, for the storage of personalized information. Theprofile builder 136 generates user profiles 128 that organize andprovide the user with access to his or her personalized information, aswell as allow the search provider 114 to leverage the personalizedinformation in indexing, searching and ranking search results to enhancerelevance.

A number of mechanisms can be implemented to collect personalizedinformation regarding a user including, but not limited to, navigationhistory, saved documents, tags, annotations, and other information. Theprofile builder 136 stores this information on a per-user basis as oneor more profiles 128 in a profile data store 126. According to anembodiment, the profile data store 126 is a relational database wherebyeach user profile 128 is structured as records located in one or morerelated data tables. Other data stores are also contemplated as fallingwithin the scope of the present invention including, but not limited to,comma separated value data stores, tab delimited value data stores,object-oriented databases, hybrid relational-object databases, or thelike. The user profiles 128 provide the search provider 114 with amechanism to retrieve the user's personalized information, such asannotations, tags, saved pages, navigation history, or the like. Forexample, when the user navigates to a page on which the user haspreviously recorded an annotation, the search provider 114 displays theuser annotation on a display device in conjunction with the page towhich the user navigated.

In addition to the foregoing personalized information captured forstorage in the user profile 128, the profile builder 136 allows theusers to become members of an electronic social network of interrelatedusers and other entities, and make available the user personalizedinformation to other members of the trusted social network. Moreover, auser profile 128 for a given user can be configured to restrict accessto the personalized information of the given user to specific members(e.g., buddies or other entities) of a personalized trusted socialnetwork, as discussed above. By operating a respective client device 102a-102 e, a user can identify, or otherwise send invitations to, otherusers so that they can become a member. An identification message fromthe user, or an acceptance message from the invited users, can betransmitted to the profile builder 136 for further processing. When auser becomes a member of, e.g., an activist organization, or subscribesto, e.g., an online news service, identification information can betransmitted to the profile builder 136.

Profile builder 136 is also operative to automatically associate one ormore trusted sources (e.g., individuals or other entities) to a givenuser, and thereby construct a listing of trusted sources for apersonalized trusted social network. Referring to FIG. 2, an example ofa general operational flow is described for building a personalizedtrusted social network. More specifically, flowchart 200 illustrates anexemplary control flow for automatically identifying trusted sources fora given user (referred to herein as “the given user”) within anelectronic social network.

To initially establish a personalized trusted social network for thegiven user, one or more trusted sources are identified that have apre-defined relationship or association with the user. To that end, oneor more online services are detected that enable electroniccommunications to its customers, members, affiliates, or subscribersover network 108, step 203. The online services can include blogs,electronic bulletin boards, emails distributed via a mailing listserver, members-only web sites, news sites, alert services, couponsites, or the like.

In an embodiment, the online services include only those services thatthe user has an active or expired membership, subscription, or the like.In other embodiments, the online services are identified without regardto whether the given user is an existing or past member, subscriber,customer, or the like. For example, the online services can include themost popular blogs as determined by network traffic, or the onlineservices can be determined by a human analyst by any other means asdesired.

After determining or accessing a listing of online services, each onlineservice is parsed to identify a trusted source, step 206. The trustedsource can be the owner, editor, or any type of administrative overseerof the online service. For example, the trusted source can be the ownerof a blog (herein referred to as “blogger”). Depending on the format andtype of online service, the trusted source can be some other participantthat contributes to the content of the online service. For example, if ablog or electronic bulletin board permits comments and other contentitems from other subscribers to be appended to its scroll, thosesubscribers can also be identified as a trusted source.

If the owner of the online service cannot be detected, the onlineservice itself can be identified as the trusted source. Alternatively,the online service can be listed as a trusted source in addition to theowner. Moreover, in an embodiment, the owner of the online service isnot researched or identified. Accordingly in such embodiment, the onlineservice is identified as the trusted source.

Upon identification of a trusted source (including the owner, otherparticipants, or the like, if appropriate), each trusted source isassociated with the given user, step 209. In an embodiment, a userprofile 128 for the given user is updated to associate the identifiedtrusted sources with the user. If an identified trusted source is acurrent user of system 100 (e.g., a current user profile 128 exists forthe trusted source), the user profile 128 for the trusted source canalso be updated to cross-relate the trusted source with the given user.If an identified trusted source is not a current user of system 100, oneor more for following actions can be executed: the identified trustedsource can be solicited to become a user or member of system 100, a newuser profile 128 can be built and stored for the trusted source, theidentified trusted source can be ignored, or some combination of theabove.

The identified trusted sources, therefore, are added to the user profile128 for the given user to create a personalized trusted social network.If the user is a new user of system 100, the above process generates aninitial listing of trusted sources for the new user. If the user is anexisting user of system 100, the listing of trusted sources is modifiedto include the new associations.

In addition to identifying trusted sources, each online service isparsed to identify any microcontent that has been associated with theonline service by the trusted source, step 212. As discussed above,microcontent includes any content item that is linked, bookmarked, orotherwise associated with a specific content item. For example, ablogged content item can include links to supporting documentation,articles, forms, multimedia, images, or the like (e.g., files 105 a-105b). These links are gathered and associated with the trusted source,step 215. The associations of microcontent can be stored in a distinctuser profile 128 for the trusted source, in the same user profile 128 asthe given user, or in a collective user profile 128 for all microcontentassociations with a trusted source.

Alternatively, or in addition, to establishing a listing of trustedsources for a personalized trusted social network, profile builder 136is operable to continuously or periodically monitor the online services,associations amongst the given user and trusted sources to the onlineservices, and/or associations amongst trusted sources and microcontent,to thereby update the user profiles 128 and the listing of trustedsources. Referring to FIG. 3, flowchart 300 illustrates an example of acontrol flow for automatically monitoring user associations to update alisting of trusted sources for a given user.

After identifying and storing the associations amongst the given userand trusted sources to online services, and the associations amongsttrusted sources and microcontent, steps 203-215, it is determinedwhether the given user has subscribed to any additional online servicesand/or whether any additional online services have become available overnetwork 108, step 318. If an additional online service is detected, theonline service is parsed for trusted sources, step 206, and the controlflow repeats, steps 206-318.

The online services are also analyzed to determine if new posts orcontributions have been added, step 321. This process can be implementedin addition to, or in lieu of, the process for checking for additionalonline services, discussed at step 318. If new posts are detected, theupdated online service is parsed to determine if the new post is from anew trusted source (e.g., user adding a comment to an electronicbulletin board or blog, reporter publishing an updated news story, orthe like), step 206, and the control flow repeats, steps 206-321.

If it is determined that no additional online services have beendetected and no updates have been made to the online services, thecontrol flow resides in dormant state, step 324. The waiting period forthe dormant state can be any period of time as desired by the systemarchitect. Hence, user associations can be monitored for additionalonline services and/or for updates to the online services on a fixed orperiodically scheduled basis.

Upon establishing and/or updating the personalized trusted socialnetwork, the given user can review or modify the user profile 128 to addor delete a member of the listing of trusted sources, as desired. In anembodiment, the user can include the user's own annotations to themembers or to other entities or objects. Examples of systems and methodsfor generating personalized information are described in commonly ownedpatent application Ser. No. 11/081,860, entitled “SEARCH SYSTEMS ANDMETHODS WITH INTEGRATION OF USER ANNOTATIONS,” filed Mar. 15, 2005, andcommonly owned patent application Ser. No. 11/082,202, entitled “SEARCHSYSTEM AND METHODS WITH INTEGRATION OF USER ANNOTATIONS FROM A TRUSTNETWORK,” filed Mar. 15, 2005, the disclosures of which are herebyincorporated by reference in their entireties.

The user and microcontent associations, as described above, from theuser profiles 128 can also be applied in various ways to enhance andpersonalize the search and browsing experiences for the given user.Referring to FIG. 4, flowchart 400 illustrates an exemplary control flowfor receiving search results annotated with content from anautomatically constructed listing of trusted sources.

When a user submits a search query for specified content, step 403, asearch report is produced that includes a list of content correspondingto the specifications of the user query, step 406. Each item in thesearch report is analyzed to determine if the item has been associatedwith any member of the user's trusted social network, step 409. Asdiscussed above, search provider 114 stores associations amongst a givenuser and trusted sources of online services, and associations amongsttrusted sources and microcontent. If a microcontent item is includedamong the items in the search report, the microcontent item is annotatedwith the trusted source associated with microcontent, and a link to theonline service that includes the content contributed by the trustedsource, step 412. The annotated search report is thereafter delivered tothe user that submitted the query, step 415.

This process can be explained with reference to FIG. 5, whichillustrates a graphical user interface (GUI) for presenting content froma blog 500 to a user. A discussion thread containing specific contentitems is included in discussion panel 502. The owner 518 of the blog 500is identified as John Doe. As discussed above, owner John Doe, the blog500 itself, or both John Doe and the blog 500 can be designated as atrusted source. In this example, John Doe maintains the blog 500 bycontributing content items in discussion panel 502. To enrich thecontext of the content items, the blog owner 518 includes a microcontentlink 520 to another web site or location that includes supportingdocumentation (e.g., microcontent). FIG. 6 illustrates an example of apartial page 600 of microcontent that can be retrieved by activatingmicrocontent link 520.

Comments links 514 a-514 n allows the blog owner 518 to provide accessto previous postings from discussion panel 502. Blog links 512 a-512 nallows access to other blogs owned or managed by the blow owner 518.Auxiliary information links 510 a-510 n provides access to other websites or blogs that are recommended by the blog owner 518. Anadvertisement region 516 allows the presentation of various types ofadvertisements, announcements, or promotions.

Blog 500 also includes a subscription activator 504, subscriptiondeactivator 506, and a feedback activator 508. Subscription activator504 enables a user to subscribe to the blog 500, and subscriptiondeactivator 506 enables a user to terminate the subscription. Feedbackactivator 508 allows users to submit questions, comments, or the like tothe blog owner 518.

To build a personalized trusted social network for a given user, an RSSfeed for the blog 500 can be parsed to identify the blog owner 518 asbeing a trusted source, see step 206. As discussed above, if the blogowner 518 allows other users to post comments or other types ofcontributions to the blog 500, those users can also be identified as atrusted source. Moreover, in some embodiments, the blog 500 isidentified as a trusted source in lieu of or in addition to the blogowner 518. All trusted sources are associated with the given user, step209.

In addition to detecting a trusted source, a portion or all of blog 500is analyzed to determine if the trusted source has included anyannotations, bookmarks, hyperlinks, attachments, or the like. Forexample, the trusted source can have included hyperlinks from blogrolls,URLs a blogger has blogged, or the like. Thus, the RSS feed is parsedfor microcontent that has been blogged by the blog owner 518, and ifappropriate, other contributing trusted sources. In an embodiment, allof the RSS feed is parsed; in other embodiments, only a portion (such asthe most recent portion) of the RSS feed is parsed for microcontent. Inan embodiment, the RSS feed is followed to an originating page to mineinformation.

The microcontent is identified by the microcontent link 520. In additionto microcontent link 520, other links can also be identified as a sourcefor microcontent, such as auxiliary information links 510 a-510 n, bloglinks 512 a-512 n, or advertisement region 516. The microcontent linksare associated with the trusted source (e.g., blog owner 518), step 215.As such, a critical mass of site metadata can be created to identify andstore any site that a blogger, for example, has publicly marked.

FIG. 7 illustrates a partial page of annotated search results 700 inaccordance with an embodiment of the present invention. One of the items(shown as item number 2) in the list of search results 700 has beenannotated with the expression “*Saved by John Doe.” This item refers tomicrocontent that has been indirectly associated with the user thatsubmitted the search query. More specifically, “John Doe” has beenassociated with the user submitting the query, microcontent link 520provides access to microcontent (e.g., microcontent 600 of FIG. 6) thathas been associated with John Doe, and contributor link 718 providesaccess to the online service that is an origin of the trusted source andmicrocontent associations. In embodiments having the blog identified asthe trusted source instead of the blog owner, the expression “*Saved byJohn Doe” can be replaced with an expression such as “*Mined from JohnDoe's Weblog.”

This can be explained with reference to FIG. 8, which illustrates anexample of a partial frame of blog 500 for which John Doe is the blogowner 518. When a user activates contributor link 718, the user isnavigated to blog 500 so that the user can view the blogged entry inblog 500 and consider the context in which the blog owner 518 is usingthe microcontent. The link for accessing to the microcontent (e.g.,microcontent 600 of FIG. 6) is shown by microcontent link 520 b in blog500, and shown by microcontent link 520 a in search results 700.

FIG. 9 illustrates a partial page 600 of microcontent that can beretrieved by activating microcontent link 520 in search results 700. Byactivating microcontent link 520, the user is navigated to the actualmicrocontent 600.

In the above examples, as described with reference to FIG. 7 throughFIG. 9, the search results 700 from a user query have been described toinclude one or more references (e.g., microcontent link 520) tomicrocontent (e.g., microcontent 600) that has been referenced in a blog(e.g., blog 500). The blog has been associated with the user, andidentified as a trusted source and/or operated by a trusted source ofthe user's personalized trusted social network. As described above,trusted sources are not restricted to blogs, but can include otheronline services, such as electronic bulletin boards, emails distributedvia a mailing list server, members-only web sites, news sites, alertservices, coupon sites, or the like, as well as the owners, operators,contributors, or participants for such online services.

For example, in response to a user query for local restaurants, thesearch results can include a link to a homepage (e.g., URL) for arestaurant listed in the search results. If the user has subscribed tonews website, and the news website has been designated as a trustedsource, the search result can include a link (e.g., microcontent link)to any articles (e.g., microcontent) that have been published on thenews website with regards to the restaurant.

In another example, a user can have subscribed to an ATOM feed for acoupon site (such as, slickdeals.net). As a result, the coupon site canbe designated as a trusted source within the user's personalized trustedsocial network. Assume that the coupon site includes a posting for newgadget including a URL to a website for purchasing the gadget. When theuser searches for the gadget and receives a hit list that includes thewebsite for purchasing the gadget, the hit list can be annotated toindicate the gadget has been posted on the coupon site (e.g., a trustedsource) and include a microcontent link to the coupon site. The usercould activate the microcontent link to review any discussions on thediscount, and/or acquire a coupon for the gadget.

FIGS. 1 through 9 are conceptual illustrations allowing an explanationof the present invention. It should be understood that various aspectsof the embodiments of the present invention could be implemented inhardware, firmware, software, or a combination thereof. In such anembodiment, the various components and/or steps would be implemented inhardware, firmware, and/or software to perform the functions of thepresent invention. That is, the same piece of hardware, firmware, ormodule of software could perform one or more of the illustrated blocks(e.g., components or steps). Unless explicitly stated otherwise herein,the ordering or arrangement of the steps and/or components should not belimited to the descriptions and/or illustrations hereof.

In software implementations, computer software (e.g., programs or otherinstructions) and/or data is stored on a machine readable medium as partof a computer program product, and is loaded into a computer system orother device or machine via a removable storage drive, hard drive, orcommunications interface. Computer programs (also called computercontrol logic or computer readable program code) are stored in a mainand/or secondary memory, and executed by one or more processors(controllers, or the like) to cause the one or more processors toperform the functions of the invention as described herein. In thisdocument, the terms “machine readable medium,” “computer program medium”and “computer usable medium” are used to generally refer to media suchas a random access memory (RAM); a read only memory (ROM); a removablestorage unit (e.g., a magnetic or optical disc, flash memory device, orthe like); a hard disk; electronic, electromagnetic, optical,acoustical, or other form of propagated signals (e.g., carrier waves,infrared signals, digital signals, etc.); or the like. Notably, thefigures and examples above are not meant to limit the scope of thepresent invention to a single embodiment, but other embodiments arepossible by way of interchange of some or all of the described orillustrated elements. Moreover, where certain elements of the presentinvention can be partially or fully implemented using known components,only those portions of such known components that are necessary for anunderstanding of the present invention are described, and detaileddescriptions of other portions of such known components are omitted soas not to obscure the invention. In the present specification, anembodiment showing a singular component should not necessarily belimited to other embodiments including a plurality of the samecomponent, and vice-versa, unless explicitly stated otherwise herein. Itis to be understood that the phraseology or terminology herein is forthe purpose of description and not of limitation, such that theterminology or phraseology of the present specification is to beinterpreted by the skilled artisan in light of the teachings andguidance presented herein, in combination with the knowledge of oneskilled in the relevant art(s). Moreover, it is not intended for anyterm in the specification or claims to be ascribed an uncommon orspecial meaning unless explicitly set forth as such. Further, thepresent invention encompasses present and future known equivalents tothe known components referred to herein by way of illustration. Whilevarious embodiments of the present invention have been described above,it should be understood that they have been presented by way of example,and not limitation. It would be apparent to one skilled in the relevantart(s) that various changes in form and detail could be made thereinwithout departing from the spirit and scope of the invention. Thus, thepresent invention should not be limited by any of the above-describedexemplary embodiments, but should be defined only in accordance with thefollowing claims and their equivalents.

I claim:
 1. A method implemented on a machine having at least oneprocessor, storage, and a communication platform connected to a networkfor establishing or maintaining a personalized trusted social networkfor a user, the method comprising: identifying a plurality of onlineservices, wherein the plurality of online services comprise a firstonline service of which a given user is a subscriber and a second onlineservice of which the given user is not a subscriber; identifying one ormore trusted sources for the given user and microcontent associated withthe plurality of online services by the one or more trusted sources;creating a trusted social network based on the identified one or moretrusted sources; receiving a search query from the given user;retrieving a search report in response to the search query; discoveringthe microcontent in the search report; and annotating the microcontentin the search report with one or more links to the plurality of onlineservices, an indication of the one or more trusted sources from thetrusted social network, wherein at least one of the one or more trustedsources is related to the second online service of which the given useris not a subscriber, and one or more expressions each of which describesan origin of a corresponding trusted source in the one or more trustedsources, wherein each of the one or more expressions is determined basedon a type of the corresponding trusted source.
 2. The method of claim 1wherein the trusted social network is created in a user profileautomatically without input from the given user.
 3. The method of claim1 wherein the plurality of online services include at least one of:blogs, electronic bulletin boards, email distribution via a mailing listserver, membership web sites, news sites, alert services, and couponsites.
 4. The method of claim 1, further comprising detecting an ownerof the plurality of online services to identify the one or more trustedsources.
 5. The method of claim 1, further comprising detecting anindividual having contributed to the plurality of online services toidentify the one or more trusted sources.
 6. The method of claim 1wherein the microcontent includes links to at least one ofdocumentation, articles, forms, multimedia, and images.
 7. The method ofclaim 1, further comprising parsing a subscription feed to identify theone or more trusted sources.
 8. The method of claim 1, wherein the givenuser is a new subscriber of the first online service.
 9. A system forestablishing or maintaining a personalized trusted social network for auser, the system comprising: a tangible non-transitory machine readablemedium having executable instructions stored therein; and a processingdevice, in response to the executable instructions, operative to:identify a plurality of online services, wherein the plurality of onlineservices comprise a first online service of which a given user is asubscriber and a second online service of which the given user is not asubscriber; identify one or more trusted sources for the given user andmicrocontent associated with the plurality of online services by the oneor more trusted sources; create a trusted social network based on theidentified one or more trusted sources; receive a search query from thegiven user; retrieve a search report in response to the search query;discover microcontent in the search report; and annotate themicrocontent in the search report with one or more links to theplurality of online services, an indication of the one or more trustedsources from the trusted social network, wherein at least one of the oneor more trusted sources is related to the second online service of whichthe given user is not a subscriber, and one or more expressions each ofwhich describes an origin of a corresponding trusted source in the oneor more trusted sources, wherein each of the one or more expressions isdetermined based on a type of the corresponding trusted source.
 10. Thesystem of claim 9 wherein the trusted social network is created in auser profile automatically without input from the given user.
 11. Thesystem of claim 9 wherein the plurality of online services include atleast one of: blogs, electronic bulletin boards, emails distribution viaa mailing list server, membership web sites, news sites, alert services,and coupon sites.
 12. The system of claim 9 the processor is furtheroperative to detect an owner of the plurality of online services toidentify the one or more trusted sources.
 13. The system of claim 9 theprocessor is further operative to detect an individual havingcontributed to the plurality of online services to identify the one ormore trusted sources.
 14. The system of claim 9 wherein the microcontentincludes links to at least one of documentation, articles, forms,multimedia, and images.
 15. The system of claim 9 the processor isfurther operative to parse a subscription feed to identify the one ormore trusted sources.